package ru.stork.vasilisa.exceptions

import ru.stork.vasilisa.lang.Node

object VasilisaModelException {
  val ERR_ALREADY_DEFINED = "Property allready defined"
  val ERR_ALREADY_INCLUDED = "Trait already included"
  val ERR_PROP_CONFLICT = "Property conflict"
  val ERR_INVALID_NAME = "Invalid name"
  val ERR_INVALID_NS = "Invalid namespace"
  val ERR_INVALID_TYPE_PARAM = "Invalid type parameter"
  val ERR_INVALID_TOPLEVEL_DECLARATION = "Invalid top level declaration"
  val ERR_INVALID_TYPE_PARAM_CNT = "Invalid type parameters count"
  val ERR_TRAIT_NOT_FOUND = "Trait not found"
}

/**
 * Something going wrong in you code.
 * @author aleksey.fomkin@gmail.com
 */
class VasilisaModelException(node:Node, message:String) extends Throwable(message)